iT邦幫忙

2024 iThome 鐵人賽

DAY 28
0
Python

一起來用 Snakify 練練手系列 第 28

【一起來用 Snakify 練練手】Day28 python 的各種模組

  • 分享至 

  • xImage
  •  

除了 turtle 模組之外,Python 提供了許多強大且有趣的內建模組和第三方模組,適合各種應用場景。以下是一些你可以學習並使用的 Python 模組:

1. math 模組

  • 用途:提供了基本的數學運算和函數,如平方根、對數、三角函數等。
  • 適合:處理數學計算、科學數據分析。
import math
print(math.sqrt(16))  # 計算平方根,輸出:4.0

2. random 模組

  • 用途:生成隨機數、隨機選擇列表中的元素或打亂列表順序。
  • 適合:隨機抽樣、遊戲設計、隨機測試。
import random
print(random.randint(1, 10))  # 生成 1 到 10 之間的隨機整數

3. datetime 模組

  • 用途:處理和操作日期與時間的模組。
  • 適合:時間處理、日曆操作、計時功能。
import datetime
now = datetime.datetime.now()
print(now)  # 輸出當前日期和時間

4. os 模組

  • 用途:與操作系統交互的模組,允許我們訪問文件系統、環境變數等。
  • 適合:文件操作、目錄處理、自動化腳本。
import os
print(os.getcwd())  # 輸出當前工作目錄

5. sys 模組

  • 用途:提供對 Python 直譯器的操作,允許訪問命令列參數和標準輸入/輸出。
  • 適合:處理命令列參數、控制程序終止、輸入輸出重定向。
import sys
print(sys.argv)  # 輸出命令列參數列表

6. json 模組

  • 用途:處理 JSON 格式的數據,可以將 Python 對象轉換為 JSON 字符串,或將 JSON 字符串解析為 Python 對象。
  • 適合:與 Web API 交互、數據存儲和交換。
import json
data = {"name": "Alice", "age": 25}
json_string = json.dumps(data)
print(json_string)  # 輸出 JSON 格式字符串

7. csv 模組

  • 用途:處理 CSV 文件的模組,允許讀寫逗號分隔值(CSV)格式的文件。
  • 適合:數據處理、文件輸入輸出、數據存儲。
import csv
with open('data.csv', mode='r') as file:
    csv_reader = csv.reader(file)
    for row in csv_reader:
        print(row)

8. collections 模組

  • 用途:提供 Python 的高效集合類型,如 Counterdequedefaultdict 等。
  • 適合:集合操作、計數、優化數據結構。
from collections import Counter
data = ["apple", "banana", "apple", "orange"]
counter = Counter(data)
print(counter)  # 計算列表中每個元素的出現次數

9. itertools 模組

  • 用途:提供高效的迭代工具,允許處理各種迭代器組合、排列、排列組合等。
  • 適合:處理迭代器、生成排列組合、處理大數據。
import itertools
permutations = itertools.permutations([1, 2, 3])
for p in permutations:
    print(p)

10. PIL (Pillow) 模組

  • 用途:處理和操作圖片的第三方模組,可以進行圖像的打開、保存、轉換、縮放、剪裁等操作。
  • 適合:圖像處理、數位化影像工作。
from PIL import Image
img = Image.open("example.jpg")
img.show()  # 打開並顯示圖片

11. matplotlib 模組

  • 用途:強大的數據可視化工具,可以用來繪製折線圖、條形圖、散點圖等。
  • 適合:數據分析、科學研究、資料可視化。
import matplotlib.pyplot as plt
plt.plot([1, 2, 3], [4, 5, 6])
plt.show()

12. requests 模組

  • 用途:一個簡單的 HTTP 請求模組,允許我們與網絡進行交互,如訪問 API。
  • 適合:網絡交互、API 調用、網絡爬蟲。
import requests
response = requests.get("https://jsonplaceholder.typicode.com/posts")
print(response.json())

13. tkinter 模組

  • 用途:Python 的圖形用戶界面(GUI)工具包,可以用來創建視窗應用程序。
  • 適合:開發桌面應用程序、製作簡單的 GUI 工具。
import tkinter as tk
window = tk.Tk()
label = tk.Label(window, text="Hello, World!")
label.pack()
window.mainloop()

14. sqlite3 模組

  • 用途:內建的 SQLite 資料庫操作模組,允許輕量級的資料庫處理。
  • 適合:輕量級資料庫管理、開發小型應用、離線數據儲存。
import sqlite3
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
cursor.execute('CREATE TABLE users (id INTEGER, name TEXT)')
conn.commit()
conn.close()

15. beautifulsoup4 模組

  • 用途:第三方網頁解析模組,通常與 requests 一起使用來抓取網頁數據。
  • 適合:網頁爬蟲、HTML/XML 解析。
from bs4 import BeautifulSoup
import requests

response = requests.get('https://example.com')
soup = BeautifulSoup(response.text, 'html.parser')
print(soup.title.text)

上一篇
【一起來用 Snakify 練練手】Day27 補充 【turtle 模組】
下一篇
【一起來用 Snakify 練練手】Day29 python pandas 工具
系列文
一起來用 Snakify 練練手30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言